<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>姓名案例_methods</title>
    <!-- 引入Vue -->
    <script type="text/javascript" src="../js/vue.js"></script>
</head>
<body>
    <!-- 准备好一个容器 -->
    <!-- 
        只要data中数据改变
        变回重新渲染模板
        渲染的过程中 插值语法重新赋值  遇到方法的回调 也会重新调用
        如果五次调用
        修改数据之后 函数即使是相同的 也会调用五次
     -->
    <div id="root">
        姓：<input type="text" v-model="firstname"><br/><br/>
        名：<input type="text" v-model="lastname"><br/><br/>
        <!-- 在事件绑定时候()可写可不写，但是在数据展示时候，需要()，拿到返回值 -->
        全名：<span>{{fullname()}}</span><br/><br/>
        全名：<span>{{fullname()}}</span><br/><br/>
        全名：<span>{{fullname()}}</span><br/><br/>
        全名：<span>{{fullname()}}</span>
    </div>
</body>

<script type="text/javascript">
    Vue.config.productionTip = false;   // 阻止vue 在启动时生成生产提示

    new Vue({
        el: "#root",
        data: {
            firstname: "张",
            lastname: "三"
        },
        methods: {
            fullname() {
                console.log("@---");
                return this.firstname.slice(0, 3) + "-" + this.lastname
            }
        }
    })
</script>
</html>